package alocador.entidades.salas.propriedades;

import alocador.exceptions.PropriedadeInvalidaException;

/**
 * Propriedade SerAberta<br>
 * Permite Alocacao apenas se a Sala nao for aberta<br>
 * Parametros:<br>
 * SerAberta - (true / false)
 */
public class SerAberta implements Propriedade {

	private boolean aberta;

	/**
	 * Construtor da Classe
	 * 
	 * @param parametros
	 *            Parametros de acordo com o setParametro de sua interface
	 * @throws PropriedadeInvalidaException
	 *             Caso os parametros sejam invalidos
	 */
	public SerAberta(String parametros) throws PropriedadeInvalidaException {
		setParametro(parametros);
	}

	public void setParametro(String parametros)
			throws PropriedadeInvalidaException {

		if (parametros == null)
			throw new PropriedadeInvalidaException("Parametro Invalido");

		if (parametros.equals("true"))
			aberta = true;
		else if (parametros.equals("false"))
			aberta = false;
		else
			throw new PropriedadeInvalidaException("Parametro Invalido");

	}

	@Override
	public String getNome() {
		return "SerAberta";
	}

	@Override
	public boolean permiteAlocacao() {
		return aberta ? false : true;
	}

}
